home *** CD-ROM | disk | FTP | other *** search
/ Total Network Tools 2002 / NextStepPublishing-TotalNetworkTools2002-Win95.iso / Archive / Email Clients / Talk-n-Mail.exe / _SETUP.1 / $TNM$_Slide.js < prev    next >
Encoding:
JavaScript  |  2001-04-22  |  3.6 KB  |  154 lines

  1. /*     JavaScript for Talk-n-Mail
  2.     Copyright (c) 1999-2000, SoftApproach Corp. All rights reserved
  3. */
  4.  
  5. var istSlideDivData // Data object 
  6.  
  7. /* Data object */
  8. function fstSlideMakeDivDataObject()
  9. {
  10.         this.iInterval = 0
  11.         this.bRandom = false
  12.         this.iPageId = 0
  13.         this.iPageTotal = 0
  14.  
  15.         this.iCurrentPage = 0
  16.         this.iCountDown = 0
  17.         this.bPause = false
  18.  
  19.         this.sCookieName = ""
  20.  
  21.     return this
  22. }
  23.  
  24. /* Show the buttons according to the current choice */
  25. function fvSlideShowButtons()
  26. {
  27. var iTh, bIs, sButtons
  28.         bIs = !istSlideDivData.bPause
  29.     for(iTh = 1; iTh <= 2; iTh ++)
  30.     {
  31.                 sButtons = "divButtons" + iTh
  32.                 fvShow(sButtons, bIs)
  33.                 bIs = !bIs
  34.     }
  35. }
  36.  
  37. // Wait for the next round
  38. function fvSlideTimer()
  39. {
  40.         setTimeout("fvSlideGo()", 1000)
  41. }
  42.  
  43. // Start / Main loop
  44. function fvSlideGo()
  45. {
  46. var iIndex = 0
  47. var isPage = ""
  48.  
  49.         // No Slidemation at all?
  50.         if(istSlideDivData.iInterval = 0) return
  51.  
  52.         // Paused?
  53.         if(istSlideDivData.bPause)
  54.         {
  55.                 fvSlideTimer()
  56.                 return
  57.         }
  58.  
  59.         // Countdown
  60.         istSlideDivData.iCountDown --
  61.         if(istSlideDivData.iCountDown > 0)
  62.         {
  63.                 fvSlideTimer()
  64.                 return
  65.         }
  66.  
  67.         // Random?
  68.         if(istSlideDivData.bRandom)
  69.         {
  70.                 do
  71.                 {
  72.                         iIndex = Math.round(Math.random() * istSlideDivData.iPageTotal) 
  73.                         if(iIndex > istSlideDivData.iPageTotal)
  74.                         {
  75.                                 iIndex = istSlideDivData.iPageTotal
  76.                         }
  77.                         else if(iIndex == 0)
  78.                         {
  79.                                 iIndex = 1
  80.                         }
  81.          
  82.  
  83.                 }while(istSlideDivData.iCurrentPage == iIndex)
  84.         }
  85.         else
  86.         {
  87.                 iIndex = istSlideDivData.iCurrentPage + 1
  88.                 if(iIndex > istSlideDivData.iPageTotal) iIndex = 1
  89.         }
  90.         // Keep
  91.         istSlideDivData.iCurrentPage = iIndex
  92.  
  93.         // Page 
  94.         isPage = "$TNM$_"
  95.         if(ibIsIE)
  96.         {
  97.                 isPage += "ie"
  98.         }
  99.         else
  100.         {
  101.                 isPage += "nc"
  102.         }
  103.  
  104.         isPage += iIndex   
  105.         isPage += ".htm"
  106.  
  107.         window.location = isPage
  108.  
  109.         // Reset
  110.         istSlideDivData.iCountDown = istSlideDivData.iInterval
  111.  
  112.         fvSlideTimer()
  113. }
  114.  
  115. /* Store the user choice to the cookie */
  116. function fvSlideStoreToCookie()
  117. {
  118. var sValue
  119. var dtExpire = new Date()
  120.         dtExpire.setTime(dtExpire.getTime() + 1000 * 60 * 60 * 24)
  121.         sValue = istSlideDivData.bPause ? "1" : "0"
  122.         fvSetCookie(istSlideDivData.sCookieName, sValue, dtExpire)
  123. }
  124.  
  125. /* Retrieve the user choice from the cookie
  126.    and display the buttons accordingly.
  127. */
  128. function fvSlideRetrieveFromCookie()
  129. {
  130. var sValue
  131.  
  132.         sValue = fsGetCookie(istSlideDivData.sCookieName)
  133.         if(sValue == null) return
  134.  
  135.         istSlideDivData.bPause = sValue == "1" ? true : false
  136.  
  137.         if(istSlideDivData.bPause)
  138.         {
  139.                 fvShow("divButtons1", false)
  140.                 fvShow("divButtons2", true)
  141.         }
  142. }
  143.  
  144. /* Toggle slide show on and off */
  145. function fvSlideToggleShow(bToPauseOnly)
  146. {
  147.         if(bToPauseOnly && istSlideDivData.bPause) return 
  148.  
  149.         istSlideDivData.bPause = !istSlideDivData.bPause
  150.         fvSlideStoreToCookie()
  151.  
  152.         fvSlideShowButtons()
  153. }
  154.